/*
 * 
 * entity对象基础类
 */
package org.springside.examples.miniweb.entity.user;

import java.util.HashMap;
import java.util.Map;

import javax.persistence.Transient;

/**
 * @author Administrator
 * 
 * POJO对象基础类
 */
public class BaseEntity
{
	/**
	 * 扩展属性集合对象
	 */
	@Transient
	private Map<String, Object> extendAttributes = new HashMap<String, Object>();

	/**
	 * 提交模板扩展属性
	 * 
	 * @param attributeName
	 *            String 属性名称
	 * @param attributeValue
	 *            Object 属性值对象
	 */
	public void putExtendAttribute(String attributeName, Object attributeValue)
	{ 
		extendAttributes.put(attributeName, attributeValue);
	}

	public Map<String, Object> getExtendAttributes()
	{
		return extendAttributes;
	}

	public void setExtendAttributes(Map<String, Object> extendAttributes)
	{
		System.out.print("in baseentity");
		this.extendAttributes = extendAttributes;
	}

	/**
	 * 得到指定名称的扩展属性值对象
	 * 
	 * @param attributeName
	 *            String 属性名称
	 * @return Object 扩展属性值对象
	 */
	public Object getExtendAttribute(String attributeName)
	{
		return extendAttributes.get(attributeName);
	}  
	
	/**
	 * 清空所有扩展属性
	 */
	public void clearExtendAttributes()
	{
		extendAttributes.clear();
	}
 
}
